package com.vhall.component.controller.room;

import com.vhall.component.entity.room.vo.*;
import com.vhall.component.plugin.common.annotation.TokenAuth;
import com.vhall.component.service.room.RoomThirdService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * 房间的三方调用
 *
 * @author xing.wang
 * @date 2023/8/8
 */
@RestController
@RequestMapping("/v4/room-third")
@RequiredArgsConstructor
public class RoomThirdController {
    private final RoomThirdService roomThirdService;

    /**
     * 获取投资依据列表
     * @param vo
     * @return
     */
    @TokenAuth
    @GetMapping("/invest-ref/list")
    public List<InvestRefResponseVO> getGuoXinInvestRefList(InvestRefRequestVO vo){
        return roomThirdService.getGuoXinInvestRefList(vo);
    }
    /**
     * 获取 oa 审核列表
     * @param vo
     * @return
     */
    @TokenAuth
    @GetMapping("/oa-flow/list")
    public List<OAFlowResponseVO> getGuoXinOAFlowList(OAFlowRequestVO vo){
        return roomThirdService.getGuoXinOAFlowList(vo);
    }

    /**
     * 获取国信员工信息列表
     * @param vo
     * @return
     */
    @TokenAuth
    @GetMapping("/guoxin-staff-list")
    public List<GuoSenStaffListResponseVO> getGuoXinStaffList(GuoSenStaffListRequestVO vo){
        return roomThirdService.getGuoXinStaffList(vo);
    }

    /**
     * 获取国信的所属区域全部信息
     * @param vo
     * @return
     */
    @TokenAuth
    @GetMapping("/guoxin-org")
    public List<GetGuoXinOrgListResponseVO> getGuoXinOrgList(GetGuoXinOrgListRequestVO vo){
        return roomThirdService.getGuoXinOrgList(vo);
    }
}
